// src/composabled/useCountDown.js
// 封装倒计时逻辑函数
import { ref, onUnmounted, computed } from 'vue'
import dayjs from 'dayjs'
export const useCountDown = ()=>{
    // 1. 响应式数据 
    let timer: any = ref()
    const time = ref(0)
    // 格式化时间 为 xx分xx秒
    let formatTime = computed(() => dayjs.unix(time.value).format('ss秒'))
    // 2. 开启倒计时函数 - 倒计时秒数
    const start = (currentTime: any) => {
        // 核心逻辑： 每隔1s减一
        formatTime = currentTime
        timer = setInterval(()=>{
            time.value--
        }, 1000)
    }
    // 组件销毁时清除定时器
    onUnmounted(()=>{
        timer && clearInterval(timer)
    })
    return {
        formatTime,
        start
    }
}